dmodel = new ht.DataModel();
g3d = new ht.graph3d.Graph3dView(dmodel);
g2d = new ht.graph.GraphView(dmodel);
/*初始化构建一个分割组件对象*/
splitView = new ht.widget.SplitView(g3d, g2d, 'vertical', 1);

view = splitView.getView();
view.className = 'main';
document.body.appendChild(view);
window.addEventListener('resize', function(e) {
  splitView.invalidate();
}, false);

//dmodel.clear();
//反序列化导入json模型
dmodel.deserialize('storage2/scenes/-ing/新疆监狱/外景.json');

//选中高亮
ht.Style['highlight.color'] = '#fab702';
//线宽
ht.Style['highlight.width'] = '2';
//悬浮:mouseover，选中:selection
g3d.setHighlightMode('selection');
//节点不受影响
// node.s('highlight.visible', false);

//创建警告提示
setTimeout(function() {
  dmodel.each(function(e) {
    if (e.getTag() === 'getinto') {
      // 4:楼高*缩放比-警告高/2
      var tall = ((e.getTall()) / 4) - 40;
      var x = e.p3()[0];
      var y = tall;
      var z = e.p3()[2];
      //创建
      // console.log([x, y, z],e);
      warntip([x, y, z], e);
    }
  });
}, 2000);


g3d.mi(function(e) {
  //设备功能
  if (e.kind === 'clickData') {
    //json文件引入的其他json
    // e.data._styleMap.shape3d
    //当前节点
    // g3d.dm()

    // console.log(e.data._styleMap.shape3d);
    // console.log(e.data.s3());
    mx=e.data.s3()[0];
    vm.$store.dispatch("CHANGE_MODEL", mx);

    //行政楼点击
    if (e.data._styleMap.shape3d === "storage2/models/监狱建筑/行政楼.json") {
      dmodel.each(function(e) {
        if (e._id > 3) {
          // 隐藏:false,显示:true
          e.s('3d.visible', false);
          ShapeContent.s('3d.visible', true);
        };
      });
      e.data.s('3d.visible', false);
    };
    if (e.data.getTag() === 'qiu') {
      dmodel.each(function(e) {
        e.s('3d.visible', true);
        ShapeContent.s('3d.visible', false);
      });
    }
    //点击建筑,建筑放大
    // console.log(e.data._styleMap.shape3d);
    if (e.data._styleMap.shape3d === "storage2/models/HT模型库/室外/工厂/厂房2.json") {
      // 方法一:获取坐标++,最后重置
      // var news3=5;
      // var x=e.data.s3()[0]+news3;
      // var y=e.data.s3()[1]+news3;
      // var z=e.data.s3()[2]+news3;
      // e.data.s3(x, y, z);
      //默认先将同类元素缩放为默认值
      dmodel.each(function(e) {
        if (e._styleMap.shape3d === "storage2/models/HT模型库/室外/工厂/厂房2.json") {
          e.setScale3d([2, 2, 2]);
        }
      });
      //方法二:等比缩放
      e.data.setScale3d([2.5, 2.5, 2.5]);
      //坐标
      // console.log(e.data.s3())
    }
  }
});


//创建最外层球
setTimeout(function() {
  ShapeContent = new ht.Node();
  ShapeContent.s3(200, 200, 200);
  ShapeContent.p3(0, 100, 0);
  ShapeContent.s({
    "shape3d": "sphere",
    'shape3d.scale': 5,
    "shape3d.image": "static/img/bgearth.jpg",
  });
  ShapeContent.setTag('qiu');
  //隐藏球
  ShapeContent.s('3d.visible', false);
  dmodel.add(ShapeContent);
}, 1000);



//创建警告框:(坐标,节点)
function warntip(arrp3, arrbuild) {
  ht.Default.setImage('warntip', 'storage2/models/panel/warn.json');
  var warn = new ht.Node();
  // warn.p3(0, 100, 0);
  warn.p3(arrp3)
  warn.s3(50, 50, 1);
  warn.s({
    'all.image': 'warntip',
  });
  warn.a({
    'blink.enabled': true,
    'blink.visible': true,
    'alarm.color': 'red'
  });
  blinkTask = {
    interval: 300,
    action: function(data) {
      if (data.a('blink.enabled')) {
        data.a('blink.visible', !data.a('blink.visible'));
      }
    }
  };

  if (arrbuild != '') {
    //楼染色
    arrbuild.setStyle('body.color', 'red');
    setInterval(function() {
      if (arrbuild.getStyleMap()["body.color"] == "red") {
        arrbuild.setStyle('body.color', '#fff');
      } else {
        arrbuild.setStyle('body.color', 'red');
      }
    }, 300)
  };
  dmodel.add(warn);
  dmodel.addScheduleTask(blinkTask);
};
